﻿using System;
namespace DaXDD.DataAccess.InMemoryDataAccess
{
    interface IProductDAO
    {
        bool DeleteProduct(DaXDD.DataContainers.Product product);
        System.Collections.Generic.List<DaXDD.DataContainers.Product> GetAllProducts();
        System.Collections.Generic.List<DaXDD.DataContainers.Product> GetProductsPagedSortedByParamsFilter(int startIndex, int pageSize, string sortBy, string productName, decimal unitPrice);
        int GetProductsPagedSortedByParamsFilterCount(int startIndex, int pageSize, string sortBy, string productNameFilter, decimal productUnitPriceFilter);
        DaXDD.DataContainers.Product GetSingleProductById(int productId);
        bool InsertProduct(DaXDD.DataContainers.Product product);
        bool UpdateProduct(DaXDD.DataContainers.Product product);
    }
}
